Meta-Programming with Tabaluga
نویسندگان
چکیده
We present a lightweight approach to meta-programming in the functional programming language Haskell. In this approach, meta-programs are constructed with the help of generalised (possibly monadic) folds over the system of datatypes that represents the abstract syntax of the objectlanguage. Such folds are obtained by (1) reusing, refining, and combining basic fold algebras, and (2) feeding the resulting fold algebra to a fold function. A library of basic fold algebras, combinators and fold functions can be generated from a system of datatypes by our tool Tabaluga. To demonstrate this technique of meta-programming with folds, we present a case study involving Haskell itself as object-language: a simple application extractor, which analyses and transforms collections of Haskell modules to remove unused (library) code.
منابع مشابه
A Hybrid Meta-Heuristic Method to Optimize Bi-Objective Single Period Newsboy Problem with Fuzzy Cost and Incremental Discount
In this paper the real-world occurrence of the multiple-product multiple-constraint single period newsboy problem with two objectives, in which there is incremental discounts on the purchasing prices, is investigated. The constraints are the warehouse capacity and the batch forms of the order placements. The first objective of this problem is to find the order quantities such that the expected ...
متن کاملWeighing and Prioritizing Branding Components of Tourism Objectives by Combining Meta synthesis Approach and Logistic Fuzzy Programming Preferences
The destination of tourism is a major element in tourism marketing. Branding tourism destination is a process by which a tourism destination develops its focal features, develops and delivers its main audience, can build a reputation, establish its reputation, strengthen slowly or even change, which is important for tourism purposes. Brand recognition is very important for communicating success...
متن کاملCREDIBILITY-BASED FUZZY PROGRAMMING MODELS TO SOLVE THE BUDGET-CONSTRAINED FLEXIBLE FLOW LINE PROBLEM
This paper addresses a new version of the exible ow line prob- lem, i.e., the budget constrained one, in order to determine the required num- ber of processors at each station along with the selection of the most eco- nomical process routes for products. Since a number of parameters, such as due dates, the amount of available budgets and the cost of opting particular routes, are imprecise (fuzz...
متن کاملAn Imperialist Competitive Algorithm and a Mixed Integer Programming Formulation for the Capacitated Vehicle Routing Problem
The Vehicle Routing Problem (VRP), a famous problem of operation research, holds a central place in combinatorial optimization problems. In this problem, a fleet vehicles with Q capacity start to move from depot and return after servicing to customers in which visit only ones each customer and load more than its capacity not at all. The objective is to minimize the number of used vehicles and t...
متن کاملTwo-stage fuzzy-stochastic programming for parallel machine scheduling problem with machine deterioration and operator learning effect
This paper deals with the determination of machine numbers and production schedules in manufacturing environments. In this line, a two-stage fuzzy stochastic programming model is discussed with fuzzy processing times where both deterioration and learning effects are evaluated simultaneously. The first stage focuses on the type and number of machines in order to minimize the total costs associat...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2007